Part Number Hot Search : 
F051212 LV2015TC 20DM64 REF01 RB151 SK510L AN620 CS493253
Product Description
Full Text Search
 

To Download IDT821054-XQ Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  1 february 2002 dsc-6035/4 ? 2001 integrated device technology, inc. quad programmable pcm codec with mpi interf ace preliminar y idt821054 the idt logo is a registered trademark of integrated device technology, inc industrial temperature range fea tures 4 channel codec with on-chip digital filters software selectable a/ m -law, linear code conversion meets itu-t g.711 - g.714 requirements programmable digital filters adapting to system demands: - ac impedance matching - transhybrid balance - frequency response correction - gain setting support two programmable pcm buses flexible pcm interface with up to 128 programmable time slots, data rate from 512kbits/s to 8.192mbits/s mpi control interface broadcast mode for coefficient setting 7 slic signaling pins (including 2 debounced pins) per channel fast hardware ring trip mechanism two programmable tone generators per channel for testing, ring- function al bl ock dia gram filter and a/d d/a and filter slic signaling ch1 vin1 vout1 2 inputs 3 i/os 2 outputs ch2 dsp core ch4 general control logic pll and clock generation pcm interface reset int 12 dr2 dx1 mclk chclk1 chclk2 fs bclk filter and a/d d/a and filter slic signaling ch3 2 inputs 3 i/os 2 outputs vin3 vout3 mpi interface cclk ci co cs int 34 tsx2 tsx1 dr1 dx2 ing and dtmf generation fsk generator two programmable chopper clocks master clock frequency selectable: 1.536mhz, 1.544mhz, 2.048mhz, 3.072mhz, 3.088mhz, 4.096mhz, 6.144mhz, 6.176 mhz or 8.192 mhz advanced test capabilities - 3 analog loop back tests - 5 digital loop back tests - level metering function high analog driving capability (300 w ac ) ttl and cmos compatible digital i/o codec identification +5 v single power supply low power consumption operating temperature range: -40c to +85c package available: pqfp_64_pm
2 industrial temperature range idt821054 quad programmable pcm codec with mpi interface description the idt821054 is a feature rich, single-chip, programmable 4 channel pcm codec with on-chip filters. besides the m -law/a-law companding and linear coding/decoding (14 effective bits + 2 extra sign bits), idt821054 also provides 1 fsk generator (can be used for sending caller-id mes- sages), 2 programmable tone generators per channel (which can also generate ring signals) together with 2 programmable chopper clocks for slic. the digital filters in idt821054 provide the necessary transmit and receive filtering for voice telephone circuit to interface with time-division multiplexed systems. an integrated programmable dsp realizes ac imped- ance matching, transhybrid balance, frequency response correction and gain setting functions. the idt821054 supports 2 pcm buses with pro- grammable sampling edge, which allows an extra delay of up to 7 clocks. pin configura tions 1 2 3 4 5 6 7 8 9 10 1 1 12 13 14 15 16 32 31 30 29 28 27 26 25 24 23 22 21 20 19 18 17 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 si2_3 si1_3 sb3_3 sb2_3 sb1_3 so2_3 so1_3 so1_4 so2_4 sb1_4 sb2_4 sb3_4 si1_4 si2_4 int34 chclk2 vin1 gnda1 vout1 vdda12 vout2 gnda2 vin2 cnf vddb vin3 gnda3 vout3 vdda34 vout4 gnda4 vin4 bclk fs dr2 dx2 tsx2 dr1 dx1 tsx1 vddd reset mclk gndd co ci cclk cs 48 47 46 45 44 43 42 41 40 39 38 37 36 35 34 33 si2_2 si1_2 sb3_2 sb2_2 sb1_2 so2_2 so1_2 so1_1 so2_1 sb1_1 sb2_1 sb3_1 si1_1 si2_1 int12 chclk1 idt821054 64 pin pqfp once the delay is determined, it is effective to all four channels of idt821054. the device also provides 7 signaling pins to slic on per channel basis. the idt821054 has a mpi interface and supports both compressed and linear data format. the device also offers strong test capability with several analog/digital loopbacks and level metering function. it brings convenience to system maintenance and diagnosis. a unique feature of ?hardware ring trip? is implemented in idt821054. when off-hook signal is detected, idt821054 can reverse an output pin to stop ringing immediately. the idt821054 can be used in digital telecommunication applications such as central office switch, pbx, dlc and integrated access devices (iads), i.e. voip and vodsl.
3 industrial temperature range idt821054 quad programmable pcm codec with mpi interface pin description name type pin number description gnda1 gnda2 gnda3 gnda4 p 50 54 59 63 analog ground. all ground pins should be connected together. gndd p 21 digital ground. all digital signals are referred to this pin. vdda12 vdda34 p 52 61 +5v analog power supply. these pins should be connect ed to ground via a 0.1 m f capacitor. all power supply pins should be connected together. vddd p 24 +5v digital power supply. vddb p 57 +5v analog power supply. this pin should be connect ed to ground via a 0.1 m f capacitor. all power supply pins should be connected together. cn f - 56 capacitor noise filter this pin should be connected to ground via a 0.22 m f capacitor. vin1 - 4 i 49, 55, 58, 64 analog voice inputs. these pins should be connected to the slic via a capacitor (0.22 m f). vout1 - 4 o 51, 53, 60, 62 voice frequency rec eiver outputs. these pins can drive 300 w ac load. it can drive transformers directly. si1_(1 - 4) si2_(1 - 4) i 36, 47, 2, 13 35, 48, 1, 14 slic signalling inputs with de - bounced function for channel 1 - 4. sb1_(1 - 4) sb2_(1 - 4) sb3_(1 - 4) i/o 39, 44, 5, 10 38, 45, 4, 11 37, 46, 3, 12 bi - directional slic signalling i/os for channel 1 - 4, can be programmed as input or output. so1_(1 - 4) so2_(1 - 4) o 41, 42, 7, 8 40, 43, 6, 9 slic signalling outputs for channel 1 - 4. dx1 o 26 transmit pcm data output, pcm hi ghway one. transmit pcm data to pcm - high - way one. this pin is tri - state output pin. dx2 o 29 transmit pcm data output, pcm highway two. transmit pcm data to pcm - high - way two. this pin is tri - state output pin. dr1 i 27 receive pcm data input, pcm highway one. pcm data is shifted into dr1 or dr2 by the bclk. pcm data can be received from dr1or dr2 depending on programming command. dr2 i 30 receive pcm data input, pcm highway two. pcm data is shifted into dr1 or dr2 by the bclk. pcm data can be received fro m dr1or dr2. refer to the description of dr1 pin. fs i 31 frame synchronisation fs is an 8 khz synchronisation clock that identifies the beginning of the pcm frame. bclk i 32 bit clock. this pin clocks out the pcm data to dx1 or dx2 pin and clocks in da ta from dr1 or dr2 pin. it may vary from 512khz to 8.192 mhz, and should be synchronous with fs. tsx1 tsx2 0 25 28 transmit output indicator. tsx1 becomes low when data is transmitted via dx1, open - drain. tsx2 becomes low when data is transmitted via dx2, open - drain. cs i 17 chip select. a low level on this pin enables the serial control interface. ci i 19 serial control interface data input. m - controller interface, control data input, cclk determines the data rate. co o 20 serial control interface data tri - state output. m - controller interface, control data output pin, cclk determines the data rate. cclk i 18 serial control interface clock. this is the clock for serial control interface. it can be up to 8.192 mhz. mclk i 22 master clock input. mas ter clock provides the clock for dsp. it can be 1.536 mhz, 1.544 mhz, 2.048 mhz, 3.072mhz, 3.088mhz, 4.096 mhz, 6.144mhz, 6.176mhz or 8.192 mhz. reset i 23 reset input. forces the device to default mode. active low.
4 industrial temperature range idt821054 quad programmable pcm codec with mpi interface name type pin number description int12 o 34 interrupt output pin. active high interrupt signal for ch1 - ch2. it reflects the changes on slic pins. int34 o 15 interrupt output pin. active high interrupt signal for ch3 - ch4. it reflects the changes on s lic pins. chclk1 o 33 chopper clock output. provides a programmable (2 - 28 ms) output signal synchronous to mclk. chclk2 o 16 chopper clock output. provides a programmable 256 khz, or 512 khz or 16.384 mhz output signal synchronous to mclk. pin description (continued)
5 industrial temperature range idt821054 quad programmable pcm codec with mpi interface function al description the idt82 1054 contains four channel pcm codec with on-chip digital filters. it provides the four-wire solution for the subscriber line circuitry in digital switches. the idt821054 converts analog voice signals to digital pcm samples and digital pcm samples back to analog voice signals. digital filters are used to bandlimit the voice signals during conversion. high performance oversampling analog-to-digital converters (adc) and digital- to-analog converters (dac) in idt821054 provide the required conversion accuracy. the associated decimation and interpolation filters are realized with both dedicated hardware and digital signal processor (dsp). the dsp also handles all other necessary functions such as pcm bandpass filtering, sample rate conversion and pcm companding. see the functional block diagram. mpi/pcm interface a serial microprocessor interface (mpi) is provided for the master device to control the idt821054; and two pcm buses are provided to transfer the digital voice data. mpi control mode the internal configuration registers (local/global), the slic signaling interface and the coefficient-ram, fsk-ram of the idt821054 are programmed by microprocessor via the serial control interface, which consists of four lines (pins): cclk, cs , ci and co. all the commands and data transmitted or received are aligned in byte (8 bits). cclk is the serial control interface clock, it can be up to 8.192mhz; cs is the chip selection pin, a low level on it enable the serial control interface; ci and co are the serial control interface data input and output, carrying the control commands and data bytes to/from the idt821054. the data transfer is synchronized to the cclk input. the contents of ci is latched on the rising edges of cclk, while co changes on the falling edges of cclk. cclk is the only reference of ci and co pins. its duty and frequency may not necessarily be standard. when cs pin becomes low, idt821054 treats the first byte on ci pin as command, and the rest as data. to write another command, cs pin must change from low to high to finish the previous command and then change from high to low to indicate the start of the next command. when a read/ write operation is completed, cs pin must be pulled to high in 8-bit time. during the execution of commands that are followed by output data, the device will not accept any new commands from ci pin. the data transfer sequence can be interrupted by setting cs pin high. see figure 1 and 2. pcm bus idt821054 provides two flexible pcm buses for all 4 channels. the digital pcm data can be compressed (a/ m -law) or linear code. the data rate can be configured as the same as bit clock (bclk) or half of it. the data can be transmitted or received either on bclk rising edges or falling edges. the data transmit and receive time slot can offset from frame synchronization (fs) by 0 to 7 bclk period(s). see figure 3. all the selections are implemented by global command 7, which is configured for all 4 channels. the pcm data of each channel can be assigned to any time slot of the pcm bus. the number of available time slots is determined by bclk frequency. for example, when bclk is 512 khz, time slot 0-7 are available; when bclk is 1.024 mhz, time slot 0-15 are available; when bclk is 8.192 mhz, time slot 0-127 are available. the idt821054 allows bclk frequency between 512 khz and 8.192 mhz at increments of 64 khz. when compressed format (8-bit wide) is selected, the voice data of one channel occupies one time slot. the tt[6:0] bits in local command 5 selects the transmit time slot for each channel, while the rt[6:0] bits in local command 6 selects the receive time slot for each channel. when linear format is selected, the voice data is a 16-bit 2?s complement number( b15 and b14 are the same as b13, which is the sign bit, b13 to b0 are effective bits ). then the voice data of one channel occupies a time slot group, which is consisted of 2 adjacent time slots. the tt[6:0] bits in local command 5 select the transmit time slot group for each channel, while the rt[6:0] bits in local command 6 select the receive time slot group for each channel. pcm data for each individual channel can be clocked out to dx1 or dx2 pin on the programmed edges of bclk according to time slot assignment. the transmit highway (dx1/2) is selected by the ths bit in local com- mand 5. the frame sync (fs) pulse identifies the beginning of a transmit frame, or time slot 0. the pcm data is transmitted serially on dx1 or dx2 with msb first. pcm data for each channel can be clocked into dr1 or dr2 pin on the programmed edges of bclk according to time slot assignment. the re- ceive highway (dr1/2) is selected by the rhs bit in local command 6. the frame sync (fs) pulse identifies the beginning of a receive frame, or time slot 0. the pcm data is received serially from dr1 or dr2 with msb first. figure 1. an example of serial interface write mode cclk cs ci co 7 6 5 4 3 2 1 0 6 5 4 3 2 1 0 6 5 4 3 2 1 0 7 7 command byte data byte 1 data byte 2 high 'z'
6 industrial temperature range idt821054 quad programmable pcm codec with mpi interface cclk cs ci co figure 2. an example of serial interface read mode (id = 81h) bit 7 time slot 0 fs bclk bclk transmit receive single clock double clock figure 3. sampling edge select waveform pcm clock slope bits in global command 7: cs = 000 cs = 001 cs = 010 cs = 011 cs = 100 cs = 101 cs = 110 cs = 111 7 6 5 4 3 2 1 0 6 5 4 3 2 1 0 6 5 4 3 2 1 0 7 command byte identification code data byte 1 high 'z' '0' '0' '0' '0' '0' '0' '1' '1' 6 5 4 3 2 1 0 7 ignored
7 industrial temperature range idt821054 quad programmable pcm codec with mpi interface dsp programming signal processing several blocks are programmable for signal processing. this allows us- ers to optimize the performance of the idt821054 for the system. figure 4 shows the signal flow for each channel and indicate the programmable blocks. the programmable digital filters are used to adjust gain and impedance, balance transhybrid and correct frequency response. all the coefficients of the digital filters can be calculated automatically by a software provided by idt. users should provide accurate slic model, impedance and gain re- quirements, then the software will calculate all the coefficients automati- cally. when these coefficients are written to the coefficient ram of the idt82v1054, the final ac characteristics of the line card (consists of slic and codec) will meet the itu-t specifications. gain adjustment the analog gain and digital gain of each channel can be adjusted separately in idt821054. for each individual channel, in transmit path, analog a/d gain can be selected as 0 db or 6 db. the selection is done by a/d gain (gad) bit in local command 9. the default analog gain for transmit path is 0 db. for each individual channel, in receive path, analog d/a gain can be selected as 0 db or -6 db. the selection is done by d/a gain (gda) bit in local command 9. the default analog gain for receive path is 0 db. digital gain of transmit path (gtx) can be programmed from -3 db to +12 db with minimum 0.1 db step. if cs[5] bit is ?0? in local command 1, the digital gain in transmit path is set to be the default value. if cs[5] bit is ?1? in local command 1, the digital gain in transmit path will be decided by the coefficient in gtx ram. digital gain of receive path (grx) can be programmed from -12 db to +3 db with minimum 0.1 db step. if cs[7] bit is ?0? in local command 1, the digital gain in receive path is set to be the default value. if cs[7] bit is ?1? in local command 1, the digital gain in receive path will be decided by the coefficient in grx ram. impedance matching there is a programmable feedback path on each channel from vin to vout in the idt821054. it synthesizes the two-wire impedance of the slic. the impedance matching filter (imf) and the gain of impedance scaling (gis) are adjustable, they work together to realize impedance matching. if the cs[0] bit in local command 1 is ?0?, the imf coefficient is set to be default value; if cs[0] is ?1?, the imf coefficient is set by the imf ram. if the cs[2] bit in local command 1 is ?0?, the gis coefficient is set to be default value; if cs[2] is ?1?, the gis coefficient is set by the gis ram. transhybrid balance transhybrid balancing filter is used to adjust transhybrid balance to en- sure the echo cancellation meets the itu-t specifications. the coefficient for echo cancellation (ecf) can be programmed. if the cs[1] bit in local command 1 is ?0?, the coefficient of ecf is set to be default value; if cs[1] is ?1?, the coefficient of ecf is decided by the ecf ram. frequency response correction the idt821054 provides two filters that can be programmed to correct any frequency distortion caused by the impedance matching filter, they are: frequency response correction for transmit path (frx) filter and frequency response correction for receive path (frr) filter. the coeffi- cients of frx filter and frr filter can be programmed. if the cs[4] bit in local command 1 is ?0?, the frx coefficient is set to be default value, while if cs[4] is ?1?, the frx coefficient is decided by the frx ram. if the cs[6] bit in local command is ?0?, the frr coefficient is set to be default value, while if cs[6] is ?1?, the frr coefficient is decided by the frr ram. the address of the coe-ram including gtx, grx, frx, frr, gis, ecf and imf ram are listed in appendix.
8 industrial temperature range idt821054 quad programmable pcm codec with mpi interface - ? lpf frx hpf lpf/sc - ? lpf u1 frr ecf uf d2 u2 imf gis d1 atx arx dtx drx @2mhz @64khz @16khz @8khz analog lpf/aa gtx grx @128khz dual tone cmp exp tsa tsa dlb-1bit alb-1bit dlb-8k alb-8k dlb-ts dlb-di alb-di dlb-ana cut-off-pcm pcm highway ts transmit p ath receive path fsk level meter local command1: cs[2] 1=enable (normal) 0=disable(cut ) local command1: cs[0] 1=enable (normal) 0 = disable(cut ) local command1: cs[1] 1=enable (normal) 0=disable ( cut ) local command1: cs[3] 1=enable (normal) 0=disable(b yp ass) bold block framed: programmable filters fine block framed: fixed filters figure 4. signal flow for each channel abbreviation list lpf/aa: anti-alias low-pass filter lpf/sc: smoothing low-pass filter lpf: low-pass filter hpf: high-pass filter gis: gain for impedance scaling d1: 1st down sample stage d2: 2nd down sample stage u1: 1st up sample stage u2: 2nd up sample stage uf: up sampling filter (64k-128k) imf: impedance matching filter ecf: echo cancellation filter gtx: gain for transmit path grx: gain for receive path frx: frequency response correction for transmit frr: frequency response correction for receive cmp: compression exp: expansion
9 industrial temperature range idt821054 quad programmable pcm codec with mpi interface slic control the slic interface of idt821054 for each channel consists of 7 pins: 2 inputs si1 and si2, 3 i/o pins sb1, sb2 and sb3, together with 2 outputs so1 and so2. si1 and si2 slic inputs si1 and si2 can be read in 2 ways - globally for all 4 channels, or locally for each individual channel. si1 and si2 data of all 4 channels can be read by executing a read operation of global command 9. the sia[3:0] bits of global command 9 represent the debounced si1 signal of channel 4 to channel 1. the sib[3:0] bits of global command 9 represent the debounced si2 signal of channel 4 to channel 1. both si1 and si2 can be assigned to off-hook, ring trip, ground key signals or other signals. the global command 9 provides for users a more efficient way to obtain time-critical data such as on/off-hook and ring trip information from the slic inputs si1 and si2. si1 and si2 data of each channel can also be read by local command 4, which provides slic information for the specific channel. sb1, sb2 and sb3 slic i/o pin sb1 for each channel can be configured as input or output separately, by global command 10. the sb1c[3:0] bits of this command correspond to the sb1 directions of channel 4 to channel 1: ?0? means input and '1' means output. similarly, the sb2c[3:0] bits of global command 11 determine the i/o direction of the sb2 pins for each channel, and the sb3c[3:0] bits of global command 12 determine the i/o direction of the sb3 pins for each channel. when the sb1, sb2 or sb3 pin is selected as input, its information can be read by global command or local command. by executing a read operation of global command 10, 11 or 12, users can obtain information of sb1, sb2 or sb3 respectively. the sb1[3:0] bits in global command 10, the sb2[3:0] bits in global command 11 and the sb3[3:0] bits in global command 12 provide the sb1, sb2 and sb3 information respectively for all four channels. the information of sb1, sb2 and sb3 can also be read by local command 4, which provides information for the specific channel. when the sb1 pin, the sb2 pin or the sb3 pin is configured as output, only global command 10, 11 or 12 can write data to the three pins respectively. so1 and so2 signals on so1 and so2 pins can only be written on a per-channel basis. local command 4 writes the 2 output pins for each channel. when local command 4 reads a channel?s slic data, the so1 and so2 bits will be read out with the data written in at previous write operation. hardware ring trip in order to prevent the damage caused by high voltage ring signal, the idt82 1054 offers a hardware ring trip function to respond to the off-hook signal as fast as possible. this function can be enabled by setting rte bit in global command 8. the off-hook signal can be input via either si1 or si2, while the ring control signal can be output via any pin of so1, so2, sb1, sb2 and sb2 (when sb1-sb3 configured as output). in global command 8, is bit determines which input is used and os[2:0] bits determine which output is used. when a valid off-hook signal arrives on si1 or si2, the idt82 1054 will turn off the ring signal by inverting the selected output, regardless of the value in corresponding slic output control register (the content in the corresponding slic control register should be changed later). this function provides a much faster response to off-hook signal than the software ring trip which turns off the ring signal by changing the value of selected output in the corresponding register. the ipi bit in global command 8 is used to indicate the valid polarity of input. if the off-hook signal is active low, the ipi should be set to ?0?; if the off-hook signal is active high, the ipi should be set to ?1?. the opi bit in global command 8 is used to indicate the valid polarity of output. if the ring control signal is required to be low in normal status and be high to activate a ring, the opi should be set to ?1?; if it is required to be high in normal status and be low to activate a ring, the opi should be set to ?0?. for example, in a system where the off-hook signal is active low and ring control signal is active high, the ipi in global command 8 should be set to ?0? and the opi bit should be set to ?1?. in normal status, the selected input (off-hook signal) is high and the selected output (ring control signal) is low. when the ring is activated by setting the output (ring control signal) high, a low pulse appearing on the input (off-hook signal) will inform the device to invert the output to low and cut off the ring signal. interrupt and interrupt enable an interrupt mechanism is offered in idt821054 for reading the slic input status. each slic input generates interrupt respectively when it changes state. any of si1, si2, sb1, sb2 and sb3 (when sb1-sb3 are configured as inputs) can be interrupt source. as si1 and si2 are debounced signals while sb1, sb2 and sb3 are not, users should be careful if they select sb1 and sb2 as interrupt sources. the idt821054 provides an interrupt enable command (local command 2) for each interrupt source to enable its interrupt ability. local command 2 contains 5 bits (ie[4:0]) for each channel. each bit of the ie[4:0] corresponds to one interrupt source of the specific channel. the device will ignore the interrupt signal if its corresponding bit in interrupt enable command is set to ?0? (disable). multiple interrupt sources can be enabled at the same time, and they can be cleared at the same time by executing an interrupt clear command (global command 2). besides this, when global command 9 which is to read the si data is executed, the interrupt source of both sia and sib for all four channels are cleared immediately. and if sb1, sb2 and sb3 are configured to be interrupt sources, a read operation of global command 10, 11 and 12 will clear the interrupt on corresponding sb port for 4 channels. while the read operation of local command 4 can clear all the 7 interrupt sources for the corresponding channel. debounce filters for each channel, idt82 1054 provides two debounce filter circuits: debounced switch hook (dsh) filter for si1 and ground key (gk) filter for si2 as shown in figure 5. they are used to buffer the input signals on si1 and si2 pins before changing the state of the slic debounced input si1/si2 register (global command 9). frame sync (fs) is necessary for both dsh filter and gk filter. dsh debounce bits in local command 3 can program the debounce time of si1 input from slic on individual channel. the dsh filter is initially clocked at half of the frame sync rate ( 250 m s), and any data changing at this sample rate resets a programmable counter. the counter clocks at the
10 industrial temperature range idt821054 quad programmable pcm codec with mpi interface rate of 2 ms, and the count value can be varied from 0 to 30 which is determined by local command 3. the corresponding sia bit in the slic debounced input si1 register (accessed by global command 9) would not be updated until the count value is reached. si1 bit usually contains slic switch hook status. gk debounce bits in local command 3 can program the debounce time of si2 input from slic on corresponding channel. the debounced signal will be output to sib of slic debounced input si2 register (accessed by global command 9). the gk debounce filter consists of an up/down counter that ranges between 0 and 6. this six-state counter is clocked by the gk timer at the sampling period of 0-30 ms, as programmed by local command 3. when the sampled value is low, the counter is decremented by each clock pulse. when the sampled value is high, the counter is incremented by each clock pulse. when the counter increments to 6, it sets a latch whose output is routed to the corresponding sib bit. if the counter decrements to 0, this latch is cleared and the output bit is set to 0. in other cases, the latch, the sib status remains in their previous state without being changed. in this way, at least six consecutive gk clocks with the debounce input remaining at the same state to effect an output change. chopper clock idt821054 offers two programmable chopper clock outputs: chclk1 and chclk2. both chclk1 and chclk2 are synchronous to mclk. chclk1 outputs signal with programmable 2-28 ms clock cycle, while the frequency of chclk2 can be any of 256 khz, 512 khz and 16.384 mhz. the frequency selection of chopper clocks can be implemented by global command 5. the chopper clocks can be used to drive the power supply switching regulators on slics. dual tone and ring generation each channel of idt82 1054 has two tone generators, tone 0 generator and tone 1 generator, which can produce a gain-adjustable dual tone signal and output it to vout pin. the tone generators can be used to generate signals such as test tone, dtmf, dial tone, busy tone, congestion tone and caller-id alerting tone etc. the tone 0 generator and tone 1 generator of each channel can be enabled or disabled independently by setting the ten0 and ten1 bits in local command 10. the tone generator is user-programmable, the frequency and amplitude of the tone can be programmed by writing coefficient into the coe-ram. the frequency coefficient and amplitude coefficient can be calculated by the following formulas: frequency coefficient = 32767 * cos( f /8000 * 2*p) amplitude coefficient = a * 32767 * sin( f /8000 * 2 *p) herein, 'f' is the desired frequency of the tone; 'a' is scaling parameter for the amplitude of the tone. the range of 'a' is from 0 to 1: a = 1, corresponding to the maximum amplitude, 3.14 v; a = 0, corresponding to minimum amplitude, 0v. it?s a linear relationship between 'a' and amplitude, which means if 'a' = b ( 0< b< 1), then the amplitude will be 3.14 *b (v). the frequency range is from 25hz to 3400hz. the frequency tolerances are as the following: 25hz < f < 40hz, tolerance< 12 % 40hz < f < 60hz, tolerance< 5 % 60hz < f < 100hz, tolerance< 2.5 % 100hz < f < 3400hz, tolerance< 1 % the frequency coefficient and amplitude coefficient should be converted to corresponding hexadecimal value before being written into the coe-ram. refer to appendix for address of tone-ram. ring signal is a special signal generated by the dual tone generators. when only one tone generator is enabled or both tone generators produce the same tone, and frequency of the tone is set as ring signal required (10 hz to 100 hz), the vout pin will output the ring signal. fsk signal generation the idt821054 provides a fsk signal generator to send caller-id messages. generally, the procedure of sending caller-id messages by fsk codes is as the following: step 1: start, send seizure signal; step 2: send mark signal; figure 5. debounce filters d q d q d q d q e d q dsh3-dsh0 debounce period (0-30ms) d q gk3-gk0 debounce period (0-30ms) up/ down q 6 states up/down counter 7 bit debounce counter 7 bit debounce counter = 0 != 0 gk sib sia si1 4khz si2 rst fs/2
11 industrial temperature range idt821054 quad programmable pcm codec with mpi interface item bt bellcore mark( 1 ) frequency 1300 hz 1.5% 1200hz 1.1% space ( 0 ) frequency 2100 hz 1.1% 2200 hz 1.1% transmission rate 1200 baud 1% 1200 baud 1 % word format 1 start bit which is ?0?, 8 word bits (with least significant bit lsb first), 1 stop bit which is ?1? 1 start bit which is ?0? 8 word bits (with least significant bit lsb first) 1 stop bit which is ?1? the channel selection is done by the fcs[2:0] bits of global command 17. 7. the fsk signal generated by the idt821054 follows the bell 202 and ccitt v.23 specifications. users can select bt or bellcore standard by setting the bt/bellcore select bit (bs) in global command 17. the difference between bt and bellcore is shown in table 1. 8. the "mark after send" bit (mas) is useful if the total message data is longer than 64 bytes. if the mas is set to '1', then after sending one frame of fsk-ram message(=< 64 bytes), idt821054 will keep sending a series of '1' to hold the communication channel for sending next frame of fsk message, and at the same time, users can update the fsk-ram with new data. this series of '1' will stop by set the mas bit to '0' or set the fo bit to '0'. 9. it should be noted that, when write/read message data to/from the fsk-ram via serial microprocessor interface, the sequence of read/write is msb first; but the fsk generator will send these signal (message data) out through channel port with lsb first. refer to the idt821054 application note for more information. level metering the idt821054 has a level meter which can be shared by all 4 signal channels. the level meter is designed to emulate the off-chip pcm test equipment so as to facilitate the line-card, subscriber line and users telephone set monitoring. the level meter tests the returned signal and reports the measurement result via mpi interface. when combined with tone generation and loopback modes, this allows the microprocessor to test channel integrity. cs[1:0] bits in global command 21 select the channel, signal on which will be metered. level metering function is enabled by setting lmo bit to ?1? in global command 21. there is a level meter counter register for this function. it can be accessed by global command 20. this register is used to configure the number of time cycles for sampling pcm data (8 khz sampling rate). the output of level meter will be sent to level meter result low and level meter result high registers (global command 18 and 19). the lvll register contains the lower 7 bits of the output and a data-ready bit (lvll[0]), while the lvlh register contains the higher 8 bits of the output. an internal accumulator sums the rectified samples until the number configured by level meter counter register is reached. by then, the lvll[0] bit is set to ?1? and accumulation result is latched into the lvll and lvlh registers simultaneously. once the lvlh register is read, the lvll[0] bit will be reset. the lvll[0] bit will be set high again by a new data available. the contents in lvll and lvlh will be overwritten by later metering result if they are not read out yet. in level metering result read operation, it is highly recommended to read lvll first. l/c bit in global command 21 determines the mode of level meter operation. when l/c bit is ?0?, the level meter will measure the linear pcm data, and if lvll[0] bit is ?1? , the measure result will be output to lvlh and lvll. when l/c bit is ?1?, compressed pcm will be output transparently to lvlh. the calculation and method of level metering will be described in the application note. channel power down/standby mode each individual channel of idt821054 can be powered down independently by local command 9. when the channel is powered down (enters into standby mode), the transmission and reception of pcm data, d/a and a/d converters are disabled. in this way, power consumption of the device can be reduced. when idt821054 is powered up or reset, all table 1 - bt/bellcore standard of fsk signal step 3: send one byte caller-id message, then send flag signal; step 4: if the messages to be sent are finished, stop; otherwise, return to step 3. herein, the seizure signal is a string of '01' pairs to inform telephone set that caller-id message will come; the mark signal is a string of '1', which follows the seizure signal to inform telephone set that caller-id message is coming; while the flag signal is a string of '1' sending between two bytes of caller-id message, with this the telephone set can have enough time to process the received byte. according to the generic procedure of fsk signal sending, a recommended programming flow chart for idt821054 fsk generator is shown in the following page. to make it easy for users to understand the flow chart, several notes is given below: 1. the fsk function block will be enabled when fsk on/off bit (fo) in global command 17 is set to '1'. after finishing sending the fsk signal, the fo bit should be set to '0' to disable the generation function. 2. the fsk start bit (fs) in global command 17 is used to indicate the start of the fsk signal generation, when fs is '0' which means the function block is idle, users can go on with the operation; when fs is '1' which means fsk generator is busy, users should wait until it turns to '0' (after the message data in the fsk-ram having been sent, the fs bit will be cleared to '0' automatically). 3. the length of the seizure signal, mark signal and flag signal are different in different system, for idt821054, they can be programmed by global command 15, 16 and 13 respectively. it should be noted that, the seizure length is two times of the value that set in global command 15, for example, if the sl[7:0] bits of global command 15 is 1(d), it means that the seizure length is 2(d). 4. as is described in "addressing of fsk-ram", the fsk-ram consists of 32 words, and each word consists of 16 bits (2 bytes), so it can contain up to 64 bytes of message at one time. if the message data is longer than 64 bytes, users should write them into the fsk-ram two or more times according to the length of the message. 5. the "data length" is the number of data bytes written in the fsk-ram and needed to be sent out. during the transmission of fsk signal, an internal counter will count the number of data bytes that have been transmitted, once it reaches the data length, the fsk transmission is completed and the fs bit is set to '0'. 6. because there is only one fsk-ram shared by four channels of
12 industrial temperature range idt821054 quad programmable pcm codec with mpi interface read "fo" and "fs" bit in global command 17 fo=1 ? fs=0 ? set fo=1 set "seizure length" in global command 15 set "mark length" in global command 16 set "flag length" in global command 13 total message data =< 64 bytes ? set "data length" in global command 14 write message data into fsk-ram in global command 17: set fcs[2:0] bits to select fsk channel set bs bit to select specification (bellcore or bt) set mas = 0 set fs = 1 set "data length" at this time in global command 14 write message data to be sent at this time to fsk-ram in global command 17: set fcs[2:0] bits to select fsk channel set bs bit to select specification (bellcore or bt) set mas = 1 set fs = 1 finish sending all the message data ? set mas and fo bit to 0 in global command 17 end set "seizure length" to 0 in global command 15 set "mark length" to 0 in global command 16 end start n y finish sending message data ? set fo = 0 in global command 17 y n y n y n y n figure 6. a recommended programming flow chart for fsk generator
13 industrial temperature range idt821054 quad programmable pcm codec with mpi interface four channels will be powered down. all circuits that contain programmed information retain their data when powered down. mpi (microprocessor interface) is always active so that new command could be received and executed. power down/suspend mode a suspend mode is offered to the whole chip to save power. in this mode, the pll block is turned off and dsp operation is disabled. this mode saves much more power consumption than standby mode. in this mode, only global command and local command can be executed. ram operation is disabled as internal clock has been turned off. the pll blocks can be powered down by global command 22. suspend mode can be entered by powering down pll and all channels.
14 industrial temperature range idt821054 quad programmable pcm codec with mpi interface address specified by local command in/out data registers being r /w b4 b3 b2 b1 b0 x x x 1 1 byte 1 x x x 11 (b1b0 = 11, 4 bytes data) byte 2 x x x 10 byte 3 x x x 01 byte 4 x x x 00 x x x 1 0 byte 1 x x x 10 (b1b0 = 10, 3 bytes data) byte 2 x x x 01 byte 3 x x x 00 x x x 0 1 byte 1 x x x 01 (b1b0 = 01, 2 bytes data) byte 2 x x x 00 x x x 0 0 byte 1 x x x 00 (b1b0 = 00, 1 byte data) operating the idt821054 programming description the programming of idt821054 can be easily realized by writing commands to registers or rams on the chip via the ci pin and reading data back via the co pin. a channel program enable command (global command 6) is provided by idt821054 to facilitate the addressing of individual or multiple channels. each bit of the higher four bits of this command (ce[0] to ce[3]) is assigned to one specific channel. the channel or channels are enabled when their corresponding bits are set high. if two or more bits, or all of the bits of ce[3:0] are high, all the channels enabled will be addressed. therefore, a broadcast mode can be implemented by simply enable all the channels in the device before performing other write-operation. the broadcast mode is very useful in initializing idt821054 such as coefficient setting in a large system. but in read operation, multiple addressing is not allowed. idt821054 provides an identification code to distinguish itself from other device of the system. when being read, idt821054 outputs an identification code of 81h before data bytes, which indicate that the following data is from idt821054. command type and command format idt821054 provides three types of register/ram commands , they are: local command (lc), which is used to configure each channel by reading/writing the local registers, there are 10 local registers per channel available; global command (gc), which is used to configure all 4 channels by reading/writing the global registers, there are totally 22 global registers shared by four channels; ram command (rc), which is used to read/write coe-ram and fsk- ram, there are 40 words (divided into 5 blocks) with 14 bits per word coe- ram for each channel, and 32 words (divided into 4 blocks) with 16 bits per word fsk-ram shared by four channels. when a rc is executed, 8 words of ram (14 or 16 bits/word) will be accessed. the format of register/ram command is as the following: b7 b6 b5 b4 b3 b2 b1 b0 r /w ct address r /w : read/write command bit. b7 = 0: read command b7 = 1: write command ct : command type b6 b5 = 00: lc - local command b6 b5 = 01: gc - global command b6 b5 = 10: not allowed b6 b5 = 11: rc - ram command address: specify which register or which block of ram will be read or written. for both local command and global command, b[4:0] are used to address the local registers or global registers. for ram command, b4 is used to distinguish the coe-ram and the fsk ram: b4 = 0: the ram command is for coe-ram b4 = 1: the ram command is for fsk-ram when the ram command is for coe-ram, b[3:0] are used to address the blocks in the coe-ram. when the ram command is for fsk-ram, b3 is always ?0? and b[2:0] are used to address the blocks in the fsk-ram. addressing local register when using local command, the channel enable command (global command 6) must be used first to specify which channel will be addressed, then the local command follows. if global command 6 enable more than one channel, then all the channels enabled will be addressed by one local command at one time. the b[4:0] of a local command determine which one of the 10 local registers will be addressed for the configured channel. idt821054 provides a consecutive adjacent addressing for read/write local registers. if the address for local register is specified in a local command, then, according to the value of ?b1b0? of the address, there will be 1 to 4 adjacent local registers will be read/write automatically with the highest order first. for example, if the address of the register specified by the local command is end with ?11? (b1b0=?11?), 4 adjacent registers will be read/write by this command. if b1b0 =?10?, then 3 adjacent registers will be read/write. if b1b0 = ?01?, then only 2 adjacent registers will be read/write. if b1b0 = ?00?, then only this specified register will be read/ write. the details of the consecutive adjacent addressing is shown in the following table. when addressing local registers, the procedure of consecutive adjacent addressing can be stopped by cs signal at any time. when cs changes from low to high, the operation of the current register and the next adjacent registers will be aborted. however, it does not affect those results in the previous operation. addressing global register the address of the 22 global registers is : 00000 - 10101 for the adjacent 22 global registers, idt821054 also provides a consecutive adjacent addressing for read/write operation, as it does for local registers. the procedure of consecutive adjacent addressing can be stopped by cs signal at any time. addressing coe-ram idt821054 provides 40 words of coe-ram for per channel. they are divided into 5 blocks, each block contains 8 words. the 5 blocks are: - imf ram (word 0 - word 7), for impedance matching filter coefficient; - ecf ram (word 8 - word 15), for echo cancellation filter coefficient; table 2 - consecutive adjacent addressing
15 industrial temperature range idt821054 quad programmable pcm codec with mpi interface - gis ram (word 16 - word 19) and tone generator ram (word 20 - word 23), for gain of impedance scaling and amplitude or frequency coefficient for tone generator; - frx ram (word 24 - word 30) and gtx ram (word 31), for coefficient of frequency response correction in transmit path and gain in transmit path; - frr ram (word 32 - word 38) and grx ram (word 39), for coefficient of frequency response correction in receive path and gain in receive path. refer to appendix (coe-ram mapping) for information about coe-ram address. each word in the coe-ram is 14-bit (b[13:0]) wide. to write a coe-ram word, 16 bits (b[15:0]) (or, two 8-bit bytes) are needed to fulfill with msb first , but the lowest two bits (b[1:0]) will be ignored. when read, each coe- ram word will output 16 bits with msb first, but the last two bits (b[1:0]) are meaningless. when addressing coe-ram, global command 6 (channel enable) must be used first to specify the channel(s), then the address (b[2:0]) in the followed ram command indicates which block of the coe-ram for the channel(s) will be addressed. when the address of a coe-ram block is specified in a ram command, all 8 words in this block will be read/write automatically, with the highest order word first. when addressing coe-ram, the procedure of consecutive adjacent addressing can be stopped by cs signal at any time. when cs changes from low to high, the operation of the current ram word and the next adjacent ram words will be aborted. however, it does not affect those results in the previous operation. addressing fsk-ram the fsk-ram is consisted of 4 blocks, each block has eight 16-bit words. the total 32 words of fsk-ram are shared by four channels, only one channel can used it at one time. to write a fsk-ram word, 16 bits (or, two 8-bit bytes) are needed to fulfill with msb first . when being read, each fsk-ram word in fsk-ram will output 16 bits with msb first. only b[2:0] of a fsk-ram command are needed to address the 4 blocks in fsk-ram, b3 should be always ?0?, and b4 is always ?1? to indicate the address is for fsk-ram. when the address of a fsk-ram block is specified in a fsk-ram command, all 8 words in the block will be read/write automatically, with the highest order word first. data transmitted on ci pin data received on co pin global command 6 (channel program enable byte) local command byte, write data byte 1 . . . data byte m* global command 6 (channel program enable byte) local command byte, read identification code (81h) data byte 1 . . . data byte m* 2. an example of global command write and read (byte transmission sequence): data transmitted on ci pin data received on co pin global command byte, write data byte 1 . . . data byte m* global command byte, read identification code (81h) data byte 1 . . . data byte m* table 3 - local command transmission sequence table 4 - global command transmission sequence examples of idt821054 commands 1. an example of local command write and read (byte transmission sequence):
16 industrial temperature range idt821054 quad programmable pcm codec with mpi interface data transmitted on ci pin data received on co pin global command 6 (channel program enable byte) coe-ram command byte, write data word 1 ( data_h, data_l**) data word 2 ( data_h, data_l) . . . data word 8 ( data_h, data_l) global command 6 (channel program enable byte) coe-ram command byte, read identification code ( 81h ) data word 1 ( data_h, data_l **) data word 2 ( data_h, data_l) . . . data word 8 ( data_h, data_l) 3. an example of coe-ram command write and read (byte transmission sequence): 4. an example of fsk-ram command write and read (byte transmission sequence): table 5 - coe-ram command transmission sequence data transmitted on ci pin data received on co pin fsk-ram command byte, write data word 1 ( data_h, data_l** ) data word 2 ( data_h, data_l) . . . data word 8 ( data_h, data_l) fsk-ram command byte, read identification code ( 81h ) data word 1 ( data_h, data_l **) data word 2 ( data_h, data_l) . . . data word 8 ( data_h, data_l) table 6 - fsk-ram command transmission sequence notes: * the number of the data bytes can be 1 to 4 depending on the two bits ?b1b0? of the local/global command. ** when addressing the coe-ram, the data word is 14-bit wide, the lowest two bits in data_l of each word are ignored; when addressing the fsk-ram, the data word is 16-bit wide. power-on sequence to power on idt821054, users should follow this sequence: 1. apply ground first; 2. apply vcc, finish signal connections and set reset low, thus the device goes into default state; 3. set reset high; 4. select master clock frequency; 5. program filter coefficients and other parameters as required; default state after reset when the idt82 1054 is powered on, or reset either by reset pin or by command, the device defaults to the following state: 1. all four channels are powered down and in standby mode; 2. all loopbacks and cutoff are disabled; 3. dx1 pin is selected for all channels to transmit data, dr1 pin is selected for all channels to receive data; 4. the master clock frequency is 2.048 mhz; 5. transmit and receive time slots are set to be 0-3 respectively for channel 1-4. the pcm data rate is the same as bit clock frequency. data is transmitted on rising edges and received on falling edges; 6. a-law is selected; 7. coefficients of grx, frr, gtx, frx, gis, ecf and imf are set to be default values. high-pass filters are disabled. refer to figure 4 and local command 1 for details. 8. sb1, sb2 and sb3 are configured as inputs; 9. si1 and si2 are configured as no debounce; 10.all interrupts are disabled, all pending interrupts are cleared; 11. all feature function blocks including fsk, dual tone, ring trip and level metering are turned off; 12.chclk1 and chclk2 are set to be high. the data stored in ram will not be changed or lost by any kind of resets. in this way, the ram data will not lost unless the device is powered down physically.
17 industrial temperature range idt821054 quad programmable pcm codec with mpi interface commands list notes: 1. r /w = 0: read; r /w = 1: write 2. r means reserved for future use. this bit will always be filled in ? 0 ? in write-command, and be ignored in read-command. global commands: 1. no operation (a0h) / version number (20h), write/read by executing this read-command (20h), users can read out the version number of the idt821054. the default value is 01h. when executing the no operation command (a0h), a data byte (ffh) must follow to ensure proper operation. 2. interrupt clear (a1h), write only all interrupts on slic i/o will be cleared by this command. when executing this command, a data byte (ffh) must follow to ensure proper operation. 3. software reset (a2h), write only this command resets all local registers, but doesn?t reset global registers and rams. when executing this command, a data byte (ffh) must follow to ensure proper operation. 4. hardware reset (a3h), write only the action of this command is equivalent to pulling the reset pin low (refer to page 16 for information about reset operation). when executing this command, a data byte (ffh) must follow to ensure proper operation. 5. chopper clock select (24h/a4h), read/write this command is used to determine the chclk2 and chclk1 output signals, the frequency is shown below: chclk2[1:0]=00: chclk2 outputs 1 permanently (default); chclk2[1:0]=01: chclk2 outputs digital signal at the frequency of 512 khz; chclk2[1:0]=10: chclk2 outputs digital signal at the frequency of 256 khz; chclk2[1:0]=11: chclk2 outputs digital signal at the frequency of 16384 khz; chclk1[3:0]=0000: chclk1 outputs 1 permanently (default); chclk1[3:0]=0001: chclk1 outputs digital signal at the frequency of 1000/2 hz; chclk1[3:0]=0010: chclk1 outputs digital signal at the frequency of 1000/4 hz; chclk1[3:0]=0011: at the frequency of 1000/6 hz; chclk1[3:0]=0100: at the frequency of 1000/8 hz; chclk1[3:0]=0101: at the frequency of 1000/10 hz; chclk1[3:0]=0110: at the frequency of 1000/12 hz; chclk1[3:0]=0111: at the frequency of 1000/14 hz; chclk1[3:0]=1000: at the frequency of 1000/16 hz; chclk1[3:0]=1001: at the frequency of 1000/18 hz; chclk1[3:0]=1010: at the frequency of 1000/20 hz; chclk1[3:0]=1011: at the frequency of 1000/22 hz; chclk1[3:0]=1100: at the frequency of 1000/24 hz; chclk1[3:0]=1101: at the frequency of 1000/26 hz; chclk1[3:0]=1110: at the frequency of 1000/28 hz; chclk1[3:0]=1111: chclk1 outputs 0 permanently. b7 b6 b5 b4 b3 b2 b1 b0 command 1 0 1 0 0 0 0 1 b7 b6 b5 b4 b3 b2 b1 b0 command 1 0 1 0 0 0 1 0 b7 b6 b5 b4 b3 b2 b1 b0 command 1 0 1 0 0 0 1 1 b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 0 1 0 0 i/o data r r chclk2 [1] chclk2 [0] chclk1 [3] chclk1 [2] chclk1 [1] chclk1 [0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 0 0 0 0 i/o data 0 0 0 0 0 0 0 1
18 industrial temperature range idt821054 quad programmable pcm codec with mpi interface 6. mclk selection and channel program enable (25h/a5), read/write the higher 4 bits of this command (ce[3:0]) are used to specify channel(s) before a local command or a coe-ram command is executed. ce[0], ce[1], ce[2] and ce[3] indicate the program enable state of channel 1, channel 2, channel 3 and channel 4 respectively. ce[0]=0: disabled, channel 1 can?t receive programming commands (default); ce[0]=1: enabled, channel 1 can receive programming commands; ce[1]=0: disabled, channel 2 can?t receive programming commands (default); ce[1]=1: enabled, channel 2 can receive programming commands; ce[2]=0: disabled, channel 3 can?t receive programming commands (default); ce[2]=1: enabled, channel 3 can receive programming commands; ce[3]=0: disabled, channel 4 can?t receive programming commands (default); ce[3]=1: enabled, channel 4 can receive programming commands. the lower 4 bits of this command (sel[3:0] are used to determine the frequency of the master clock: sel[3:0]=0000: 8.192mhz sel[3:0]=0001: 4.096mhz sel[3:0]=0010: 2.048mhz (default) sel[3:0]=0110: 1.536mhz sel[3:0]=1110: 1.544mhz sel[3:0]=0101: 3.072mhz sel[3:0]=1101: 3.088mhz sel[3:0]=0100: 6.144mhz sel[3:0]=1100: 6.176mhz 7. a/ m -law, linear/compressed code, clock slope and delay time select (26h/a6), read/write a/ m -law select bit (a- m ) selects the companding law: a- m = 0: a-law is selected (default) a- m = 1: m -law is selected. voice data select bit (vds) defines the format of the voice data: vds = 0: compressed code (default) vds = 1: linear code clock slope (cs[2:0]) selects single or double clock and clock edges of transmitting and receiving data: cs[2] = 0: single clock (default) cs[2] = 1: double clock cs[1:0]=00: transmits data on rising edges of bclk, receives data on falling edges of it cs[1:0]=01: transmits data on rising edges of bclk, receives data on rising edges of it cs[1:0]=10: transmits data on falling edges of bclk, receives data on falling edges of it cs[1:0]=11: transmits data on falling edges of bclk, receives data on rising edges of it pcm data offset configuration bits (oc[2:0]) determine the number of clocks that pcm data transmit and receive time slot is offset from fs signal: oc[2:0] = 000: 0 bclk period (default); oc[2:0] = 001: 1 bclk period; oc[2:0] = 010: 2 bclk periods; oc[2:0] = 011: 3 bclk periods; oc[2:0] = 100: 4 bclk periods; oc[2:0] = 101: 5 bclk periods; oc[2:0] = 110: 6 bclk periods; oc[2:0] = 111: 7 bclk periods. 8. slic ring trip setting and control (27h/a7h), read/write b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 0 1 0 1 i/o data ce[3] ce[2] ce[1] ce[0] sel[3] sel[2] sel[1] sel[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 0 1 1 0 i/o data a- m vds cs[2] cs[1] cs[0] oc[2] oc[1] oc[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 0 1 1 1 i/o data opi r ipi is rte os[2] os[1] os[0]
19 industrial temperature range idt821054 quad programmable pcm codec with mpi interface output polarity indicator bit (opi) indicates the valid polarity of output: opi=0: the selected output pin changes from low to high to activate the ring (default); opi=1: the selected output pin changes from high to low to activate the ring. input polarity indicator bit (ipi) indicates the valid polarity of input: ipi=0: active low default); ipi=1: active high. input selection bit (is) determines which input will be selected as the off-hook indication signal source. is = 0: si1 is selected (default); is = 1: si2 is selected. ring trip enable bit (rte) enables or disables the ring trip function block: rte = 0: the ring trip function block is disabled (default); rte = 1: the ring trip function block is enabled. output selection bits (os[2:0]) determine which output will be selected as the ring control signal source. os[2:0] = 000 - 010: not defined; os[2:0] = 011: sb1 is selected (when it?s configured as an output); os[2:0] = 100: sb2 is selected (when it?s configured as an output); os[2:0] = 101: sb3 is selected (when it?s configured as an output); os[2:0] = 110: so1 is selected; os[2:0] = 111: so2 is selected. 9. read si data (28h), read only sia bits contain slic status which slic interface pin si1 receives. the value of sia [0], sia[1], sia[2] and sia[3] represent the debounced data on channel 1, channel 2, channel 3 and channel 4 respectively. sib bits contain slic ground key status which slic interface pin si2 receives. the value of sib [0], sib[1], sib[2] and sib[3] represent the debounced data on channel 1, channel 2, channel 3 and channel 4 respectively. 10. sb1 direction control, sb1 data (29h/a9h), read/write slic sb1 direction control bits (sb1c[3:0]) configure the direction of slic bidirectional interface pin sb1. sb1c[0]=0: sb1 pin of channel 1 is configured as input (default); sb1c[0]=1: sb1 pin of channel 1 is configured as output; sb1c[1]=0: sb1 pin of channel 2 is configured as input (default); sb1c[1]=1: sb1 pin of channel 2 is configured as output; sb1c[2]=0: sb1 pin of channel 3 is configured as input (default); sb1c[2]=1: sb1 pin of channel 3 is configured as output; sb1c[3]=0: sb1 pin of channel 4 is configured as input (default); sb1c[3]=1: sb1 pin of channel 4 is configured as output. sb1[3:0] bits contain the information of slic bidirectional pin sb1. the sb1[0], sb1[1], sb1[2] and sb1[3] contain the sb1 data of channel 1, channel 2, channel 3 and channel 4 respectively. 11. sb2 direction control, sb2 data (2ah/aah), read/write slic sb2 direction control bits (sb2c[3:0]) configure the direction of slic bidirectional interface pin sb2. sb2c[0]=0: sb2 pin of channel 1 is configured as input (default); sb2c[0]=1: sb2 pin of channel 1 is configured as output; sb2c[1]=0: sb2 pin of channel 2 is configured as input (default); sb2c[1]=1: sb2 pin of channel 2 is configured as output; sb2c[2]=0: sb2 pin of channel 3 is configured as input (default); sb2c[2]=1: sb2 pin of channel 3 is configured as output; sb2c[3]=0: sb2 pin of channel 4 is configured as input (default); sb2c[3]=1: sb2 pin of channel 4 is configured as output. sb2[3:0] bits contain the information of slic bidirectional pin sb2. the sb2[0], sb2[1], sb2[2] and sb2[3] contain the sb2 data of channel 1, channel 2, channel 3 and channel 4 respectively. b7 b6 b5 b4 b3 b2 b1 b0 command 0 0 1 0 1 0 0 0 i/o data sib[3] sib[2] sib[1] sib[0] sia[3] sia[2] sia[1] sia[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 0 0 1 i/o data sb1c[3] sb1c[2] sb1c[1] sb1c[0] sb1[3] sb1[2] sb1[1] sb1[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 0 1 0 i/o data sb2c[3] sb2c[2] sb2c[1] sb2c[0] sb2[3] sb2[2] sb2[1] sb2[0]
20 industrial temperature range idt821054 quad programmable pcm codec with mpi interface b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 1 0 0 i/o data fl[7] fl[6] fl[5] fl[4] fl[3] fl[2] fl[1] fl[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 1 0 1 i/o data wl[7] wl[6] wl[5] wl[4] wl[3] wl[2] wl[1] wl[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 1 1 0 i/o data sl[7] sl[6] sl[5] sl[4] sl[3] sl[2] sl[1] sl[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 1 1 1 i/o data ml[7] ml[6] ml[5] ml[4] ml[3] ml[2] ml[1] ml[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 1 0 0 0 0 i/o data r r fcs[1] fcs[0] fo bs mas fs 12. sb3 direction control, sb3 data (2bh/abh), read/write slic sb3 direction control bits (sb3c[3:0]) configure the direction of slic bidirectional interface pin sb3. sb3c[0]=0: sb3 pin of channel 1 is configured as input (default); sb3c[0]=1: sb3 pin of channel 1 is configured as output; sb3c[1]=0: sb3 pin of channel 2 is configured as input (default); sb3c[1]=1: sb3 pin of channel 2 is configured as output; sb3c[2]=0: sb3 pin of channel 3 is configured as input (default); sb3c[2]=1: sb3 pin of channel 3 is configured as output; sb3c[3]=0: sb3 pin of channel 4 is configured as input (default); sb3c[3]=1: sb3 pin of channel 4 is configured as output. sb3[3:0] bits contain the information of slic bidirectional pin sb3. the sb3[0], sb3[1], sb3[2] and sb3[3] contain the sb3 data of channel 1, channel 2, channel 3 and channel 4 respectively. 13. fsk flag length (2ch/ach), read/write flag length bits (fl[7:0]) determine the number of flag bits ?1? which will be transmitted between the transmission of message bytes. the value is valid from 0 to 255(d). the default value is 0(d). if 0(d) is selected, no flag signal will be sent. 14. fsk data length (2dh/adh), read/write data length bits (wl[7:0]) determine the number of all the data bits which will be transmitted except flag. the value is valid from 0 to 64(d). any value larger than 64(d) will be taken as 64(d) by the cpu. the default value of this register is 0(d). when 0(d) is selected, none of the word data will be sent out. when mark after send (mas bit in global command 17) is set to ?1?, the mark signal will be sent; while mark after send is set to ?0?, the transmission of mark signal will be terminated. 15. fsk seizure length (2eh/aeh), read/write seizure length bits (sl[7:0]) determine the number of ?01? pairs which represent seizure phase( seizure length is two times of the value in sl[7:0], which is valid from 0 to 255(d), corresponding to seizure length 0 to 510). the default value is 0(d). when 0(d) is selected, no seizure signal will be sent. 16. fsk mark length (2fh/afh), read/write mark length bits (ml[7:0]) determine the number of mark bits ?1? which will be transmitted in initial flag phase. the value is valid from 0 to 255(d). the default value is 0(d). when 0(d) is selected, no mark signal will be sent. 17. fsk start, mark after send, bt/bellcore select, fsk channel select and fsk on/off (30h/b0h), read/write b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 0 1 0 1 1 i/o data sb3c[3] sb3c[2] sb3c[1] sb3c[0] sb3[3] sb3[2] sb3[1] sb3[0]
21 industrial temperature range idt821054 quad programmable pcm codec with mpi interface fsk channel select bits (fcs[1:0]) selects the channel on which fsk operation will be implemented. fcs[1:0] = 00: channel 0 is selected (default); fcs[1:0] = 01: channel 1 is selected; fcs[1:0] = 10: channel 2 is selected; fcs[1:0] = 11: channel 3 is selected; fsk on/off (fo) enables or disables the whole fsk function block. fo = 0: fsk is disabled (default); fo = 1: fsk is enabled. bt/bellcore select bit (bs) determines which specification the idt821054 follows: bs = 0: bellcore specification is selected (default); bs = 1: bt specification is selected. mark after send bit (mas) determines the fsk block operation after the word data has been sent. mas = 0: the output will be muted after sending out word data (default); mas = 1: after sending one frame of message data (=< 64 bytes), idt821054 keeps sending a series of '1' until the mas bit is set to ?0? and the fs bit is set to ?1?. fsk start bit (fs) should be set to ?1? when users are going to send out fsk data. it will be cleared to the default value ?0? at the end of word data. when seizure length, mark length together with data length bits are all set to 0, the transmit start bit will be reset to ?0? immediately after it is set to ?1?. fs = 0: disable; fs = 1: transmit start. 18. level meter result low register (31h), read only this register contains the lower 8 bits of level meter output with the default value of ?0000-0000?, lvll[0] is the high active data_ready bit. to read the level meter result, users should read the low register which contains lvll[7:0] data first, then read the high register which contains lvlh[7:0] data. once the high register is read, the lvll[0] bit is cleared immediately. 19. level meter result high register (32h), read only this register contains the higher 8 bits of level metering output with the default value of 0(d). 20. level meter count number (33h/b3h), read/write level meter count number register is used to configure the number of time cycles for sampling pcm data. cn[7:0] = 0000-0000: the linear or compressed pcm data is output to lvlh and lvll directly; cn[7:0] = n: pcm data is sampled for n * 125 m s ( n from 1 to 255). 21. level meter channel select, linear/compressed, level meter on/off (34h/b4h), read/write level meter on/off bit (lmo) enables/disable the level meter. lmo = 0: level meter is disabled (default); lmo = 1: level meter is enabled. linear/compressed bit (l/c) determines the mode of level meter operation. l/c = 0: message mode is selected, compressed pcm will be output to lvlh and lvll transparently. l/c = 1: meter mode is selected, linear pcm data will be metered and output to lvlh and lvll, when data_ready bit in lvll register is ?1?. b7 b6 b5 b4 b3 b2 b1 b0 command 0 0 1 1 0 0 0 1 i/o data lvll[7] lvll[6] lvll[5] lvll[4] lvll[3] lvll[2] lvll[1] lvll[0] b7 b6 b5 b4 b3 b2 b1 b0 command 0 0 1 1 0 0 1 0 i/o data lvlh[7] lvlh[6] lvlh[5] lvlh[4] lvlh[3] lvlh[2] lvlh[1] lvlh[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 1 0 0 1 1 i/o data cn[7] cn[6] cn[5] cn[4] cn[3] cn[2] cn[1] cn[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 1 0 1 0 0 i/o data r r r r lmo l/c cs[1] cs[0]
22 industrial temperature range idt821054 quad programmable pcm codec with mpi interface level meter channel select bits (cs[1:0]) select the channel, data on which will be level metered. cs[1:0] = 00: channel 0 is selected (default); cs[1:0] = 01: channel 1 is selected; cs[1:0] = 10: channel 2 is selected; cs[1:0] = 11: channel 3 is selected; 22. loop control and pll power down (35h/b5h), read/write pll power down bit (ppd) controls the operation of phase lock loop. ppd = 0: pll disable, the device is in normal operation (default); ppd = 1: pll is powered down. the device works in power-saving mode. all clocks stop running. loop control bits determine the loopback status. refer to figure 4 for detail information. dlb_ana = 0: digital loopback via analog interface is disabled (default); dlb_ana = 1: digital loopback via analog interface is enabled; alb_8k = 0: analog loopback via 8 khz interface is disabled (default); alb_8k = 1: analog loopback via 8 khz interface is enabled; dlb_8k = 0: digital loopback via 8 khz interface is disabled (default); dlb_8k = 1: digital loopback via 8 khz interface is enabled; dlb_di = 0: digital loopback from dr to dx is disabled (default); dlb_di = 1: digital loopback from dr to dx is enabled; alb_di = 0: analog loopback from dx to dr is disabled (default); alb_di = 1: analog loopback from dx to dr is enabled. b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 1 1 0 1 0 1 i/o data r r ppd dlb_ana alb_8k dlb_8k dlb_di alb_di
23 industrial temperature range idt821054 quad programmable pcm codec with mpi interface local commands: 1. coefficient select (00h/80h), read/write coefficient select bits (cs[7:0]) are used to control digital filters and function blocks on corresponding channel such as impedance matching filter, echo cancellation filter, high-pass filter, gain for impedance scaling, gain in transmit/receive path and frequency response correction in transmit/ receive path. see figure 4 for detail. it should be noted that impedance matching filter and gain for impedance scaling are working together to adjust impedance. that is to say, cs[0] and cs[2] should be set to the same value to ensure the correct operation. cs [7] = 0: gain in receive path coefficient is set to be default value; cs [7] = 1: gain in receive path coefficient is set by grx ram. cs [6] = 0: frequency response correction in receive path coefficient is set to be default value; cs [6] = 1: frequency response correction in receive path coefficient is set by frr ram; cs [5] = 0: gain in transmit path coefficient is set to be default value; cs [5] = 1: gain in transmit path coefficient is set by gtx ram; cs [4] = 0: frequency response correction in transmit path coefficient is set to be default value; cs [4] = 1: frequency response correction in transmit path coefficient is set by frx ram; cs [3] = 0: high-pass filter is bypassed/disabled (default); cs [3] = 1: high-pass filter is enabled; cs [2] = 0: gain for impedance scaling coefficient is set to be default value; cs [2] = 1: gain for impedance scaling coefficient is set by gis ram; cs [1] = 0: echo cancellation filter coefficient is set to be default value; cs [1] = 1: echo cancellation filter coefficient is set by ecf ram; cs [0] = 0: impedance matching filter coefficient is set to be default value; cs [0] = 1: impedance matching filter coefficient is set by imf ram; 2. loop status control and slic input interrupt enable (01h/81h), read/write slic input interrupt enable bits ie[4:0] enable or disable the interrupt signal on each channel. ie[4] = 0: interrupt disable. interrupt signal on sb3 (when it is selected as an input) will be ignored (default); ie[4] = 1: interrupt enable. interrupt signal on sb3 (when it is selected as an input) will be recognized; ie[3] = 0: interrupt disable. interrupt signal on sb2 (when it is selected as an input) will be ignored (default); ie[3] = 1: interrupt enable. interrupt signal on sb2 (when it is selected as an input) will be recognized; ie[2] = 0: interrupt disable. interrupt signal on sb2 (when it is selected as an input) will be ignored (default); ie[2] = 1: interrupt enable. interrupt signal on sb1 (when it is selected as an input) will be recognized; ie[1] = 0: interrupt disable. interrupt signal on si2 will be ignored (default); ie[1] = 1: interrupt enable. interrupt signal on si2 will be recognized; ie[0] = 0: interrupt disable. interrupt signal on si1 will be ignored (default); ie[0] = 1: interrupt enable. interrupt signal on si1 will be recognized; loop status control bits (lpc[2:0]) determine the loopback status on corresponding channel. refer to figure 4 for detail information. lpc[2] = 0: digital loopback via time slots is disabled on the corresponding channel (default); lpc[2] = 1: digital loopback via time slots is enabled on the corresponding channel. lpc[1] = 0: analog loopback via onebit is disabled on the corresponding channel (default); lpc[1] = 1: analog loopback via onebit is enabled on the corresponding channel; lpc[0] = 0: digital loopback via onebit is disabled on the corresponding channel (default); lpc[0] = 1: digital loopback via onebit is enabled on the corresponding channel; b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 0 0 0 i/o data cs[7] cs[6] cs[5] cs[4] cs[3] cs[2] cs[1] cs[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 0 0 1 i/o data ie[4] ie[3] ie[2] ie[1] ie[0] lpc[2] lpc[1] lpc[0]
24 industrial temperature range idt821054 quad programmable pcm codec with mpi interface 3. dsh debounce and gk debounce (02h/82h), read/write dsh debounce bits dsh[3:0] set the debounce time of si1 input from slic for corresponding channel. dsh[3:0] = 0000: 0 ms (default); dsh[3:0] = 0001: 2 ms; dsh[3:0] = 0010: 4 ms; dsh[3:0] = 0011: 6 ms; dsh[3:0] = 0100: 8 ms; dsh[3:0] = 0101: 10 ms; dsh[3:0] = 0110: 12 ms; dsh[3:0] = 0111: 14 ms; dsh[3:0] = 1000: 16 ms; dsh[3:0] = 1001: 18 ms; dsh[3:0] = 1010: 20 ms; dsh[3:0] = 1011: 22 ms; dsh[3:0] = 1100: 24 ms; dsh[3:0] = 1101: 26 ms; dsh[3:0] = 1110: 28 ms; dsh[3:0] = 1111: 30 ms. gk debounce bits gk[3:0] set the debounce time of si2 input from slic for corresponding channel. gk[3:0] = 0000: 0 ms (default); gk[3:0] = 0001: 2 ms; gk[3:0] = 0010: 4 ms; gk[3:0] = 0011: 6 ms; gk[3:0] = 0100: 8 ms; gk[3:0] = 0101: 10 ms; gk[3:0] = 0110: 12 ms; gk[3:0] = 0111: 14 ms; gk[3:0] = 1000: 16 ms; gk[3:0] = 1001: 18 ms; gk[3:0] = 1010: 20 ms; gk[3:0] = 1011: 22 ms; gk[3:0] = 1100: 24 ms; gk[3:0] = 1101: 26 ms; gk[3:0] = 1110: 28 ms; gk[3:0] = 1111: 30 ms; 4. channel i/o data (03h/83h), read/write channel i/o data bits contain the information of slic i/o pins si1, si2, sb1, sb2, sb3, so1 and so2 on corresponding channel. if sb1, sb2 or sb3 is configured as output, this command can not be used to write to sb1, sb2 or sb3. writing to sb1, sb2 or sb3 can only be performed by global command 10, 11 and 12, respectively. 5. transmit time slot and transmit highway selection (04h/84h), read/write transmit time slot bits (tt[6:0]) determine which time slot will be used to transmit data for corresponding channel. the valid value is 0d - 127d corresponding to time slot 0 to time slot 127. the default value is 0d. transmit highway selection bit (ths) selects the pcm highway on corresponding channel to transmit voice data. ths = 0: dx1 is selected (default); ths = 1: dx2 is selected. b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 0 1 0 i/o data gk[3] gk[2] gk[1] gk[0] dsh[3] dsh[2] dsh[1] dsh[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 0 1 1 i/o data r so2 so1 sb3 sb2 sb1 si2 si1 b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 1 0 0 i/o data ths tt[6] tt[5] tt[4] tt[3] tt[2] tt[1] tt[0]
25 industrial temperature range idt821054 quad programmable pcm codec with mpi interface b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 1 0 0 0 i/o data pd pcmct gad gda 0 0 0 0 6. receive time slot and receive highway selection (05h/85h), read/write receive time slot bits rt[6:0] determine which time slot will be used to receive data for corresponding channel. the valid value is 0d - 127d corresponding to time slot 0 to time slot 127. the default value is 0d. receive highway selection bit rhs selects the pcm highway on corresponding channel to receive voice data. rhs = 0: dr1 is selected (default); rhs = 1: dr2 is selected. 7. pcm data low byte [7:0] (06h/86h), read only this command is used for mcu to monitor the transmit (a to d) pcm data. for linear code, the low 8 bits of the pcm data will be output at co pin, and at the same time, the transmit data will be output to pcm bus without any interference. for compressed code (a/ m -law ), the total 8 bit pcm data will be output at co pin. 8. pcm data high byte [15:8] (07h/87h), read only this command is used for mcu to monitor the transmit (a to d) pcm data. for linear code, the high 8 bits of the pcm data will be output at co pin, and at the same time, the transmit data will be output to pcm bus without any interference. for compressed code (a/ m -law), this command is not used. 9. a/d gain, d/a gain, power down and pcm receive path cutoff (08h/88h), read/write channel power down bit (pd) selects the operation mode on corresponding channel: pd = 0: the corresponding channel is in normal operation; pd = 1: the corresponding channel is powered down (default). pcmct bit determines the operation of pcm receive path on corresponding channel: pcmct = 0: pcm receive path is in normal operation (default); pcmct = 1: pcm receive path is cut off. a/d gain bit (gad) sets the gain of analog a/d for corresponding channel: gad = 0: 0 db (default); gad = 1: +6 db. d/a gain bit (gda) sets the gain of analog d/a for corresponding channel: gda = 0: 0 db (default); gda = 1: -6 db. attention: the lower 4 bits of the i/o data byte that follows this write-command (88h) must be '0000' to ensure proper operation. 10. tone on/off and tone program enable (09h/89h), read/write ten1 = 0: tone1 generator is disable (default); ten1 = 1: tone1 generator is enable. ten0 = 0: tone0 generator is disable (default); ten0 = 1: tone0 generator is enable. attention: the b2 and b3 of the i/o data byte that follows this write-command (89h) must be '11' to ensure proper operation. b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 1 0 1 i/o data rhs rt[6] rt[5] rt[4] rt[3] rt[2] rt[1] rt[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 1 1 0 i/o data pcm[7] pcm[6] pcm[5] pcm[4] pcm[3] pcm[2] pcm[1] pcm[0] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 0 1 1 1 i/o data pcm[15] pcm[14] pcm[13] pcm[12] pcm[11] pcm[10] pcm[9] pcm[8] b7 b6 b5 b4 b3 b2 b1 b0 command r /w 0 0 0 1 0 0 1 i/o data r r r r 1 1 ten1 ten0
26 industrial temperature range idt821054 quad programmable pcm codec with mpi interface analog interface absol ute maximum ra tings note: stresses greater than those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only and functional operation of the device at these or any other conditions above those indicated in the operational sections of this specification is not implied. exposure to absolute maximum rating conditions for extended periods may affect reliability. electrical chara cteristics digital interface note: power measurements are made at mclk = 2.048mhz, outputs unloaded. power dissipation recommended dc opera ting conditions note: mclk: 1.536 mhz, 1.544 mhz, 2.048 mhz, 3.072 mhz, 3.088 mhz, 4.096 mhz, 6.144 mhz, 6.176 mhz or 8.192 mhz with tolerance of 50 ppm rating com?i & ind?i unit power supply voltage 6.5 v voltage on any pin with respect to ground -0.5 to 5.5 v package power dissipation 1.5 w storage temperature -65 to +150 c parameter min. typ. max. unit operating temperature - 40 +85 c power supply voltage 4.75 5.25 v parameter description min typ max units test conditions v il input low voltage 0.8 v all digital inputs v i h input high voltage 2.0 v all digital inputs v o l output low voltage 0 .8 v dx, i l = 8 ma all other digital outputs, i l = 4 ma. v oh output high voltage vdd - 0.6 v dx, i l = - 8 ma all other digital outputs, i l = - 4 ma. i i input current - 10 10 m a all digital inputs, gnd 27 industrial temperature range idt821054 quad programmable pcm codec with mpi interface transmission characteristics 0 dbm0 is defined as 0.775 vrms for a-law and 0.769 vrms for m -law, both for 600 w load. unless otherwise noted, the analog input is a 0 dbm0, 1020 hz sine wave; the input amplifier is set for unity gain. the digital input is a pcm bit stream equivalent to that obtained by passing a 0 dbm0, 1020 hz sine wave through an ideal encoder. the output level is sin(x)/x-corrected. typical values are for v dd = 5v and t a = 25c. absolute gain gain tracking frequency response group delay parameter description min typ max units test conditions g xa transmit gain, absolute - 0.25 0.25 db signal input of 0 dbm0, m - law or a - law g ra receive gain, absolute - 0.25 0.25 db measured relative to 0 dbm0, m - law or a - law, pcm input of 0 dbm0 1020 hz , r l = 10 k w parameter description min typ max units test conditions gt x transmit gain tracking +3 dbm0 to ? 37 dbm0 (exclude ? 37 dbm0) - 37 dbm0 to - 50 dbm0 (exclude ? 50 dbm0) - 50 dbm0 to - 55 dbm0 - 0.25 - 0.5 - 1.4 0.25 0.50 1.4 db db db tested by sinusoidal metho d, m - law/a - law gt r receive gain tracking +3 dbm0 to - 40 dbm0 (exclude ? 40 dbm0) - 40 dbm0 to - 50 dbm0 (exclude ? 50 dbm0) - 50 dbm0 to - 55 dbm0 - 0.10 - 0.25 - 0.50 0.10 0.50 0.50 db db db tested by sinusoidal method, m - law/a - law parameter description min typ max units test conditions d xr transmit delay, relative to 1800 hz f = 500 hz ? 600 hz f = 600 hz ?1000 hz f = 1000 hz ? 2600 hz f = 2600 hz ? 2800 hz 280 150 80 280 m s m s m s m s d rr receive delay, relative to 1800 hz f = 500 hz ? 600 hz f = 600 hz ?1000 hz f = 1000 hz ? 2600 hz f = 2600 hz ? 2800 hz 50 80 120 150 m s m s m s m s parameter description min typ max units test conditions g xr transmit gain, relative to g xa f = 50 hz f = 60 hz f = 300 hz f between 300 hz and 3400 hz f = 3600 hz f = 4600 hz and above - 0.15 - 0.15 - 0.1 - 0.15 - 0.15 - 0.15 - 30 - 30 0.2 0.15 - 0.1 - 35 db db db db db db high - pass filter is enabled. g rr receive gain, relative to g ra f below 300 hz f = 300 hz to 3400 hz f = 3600 hz f = 4600 hz and above - 0.15 0 0.15 - 0.2 - 35 db db db db high - pass filter is enabled.
28 industrial temperature range idt821054 quad programmable pcm codec with mpi interface distortion noise transmission characteristics (continued) interchannel crosstalk note: crosstalk into the transmit channels (vin) can be significantly affected by parasitic capacitive coupling from v out outputs. pcb layouts should be arranged to minimize these parasitics. parameter description min typ max units test conditions n xc transmit noise, c message weighted for m - law 15 dbrnc0 n xp transmit noise, psophometric weighted for a - law - 70 dbm0p n rc receive noise, c message weighted for m - law 10 dbrnc0 n rp re ceive noise, psophometric weighted for a - law - 80 dbm0p n rs noise, single frequency f = 0 khz ? 100 khz - 53 dbm0 vin = 0 vrms, tested at vout psr x power supply rejection transmit f = 300 hz ? 3.4 khz f = 3.4 khz ? 20 khz 40 25 db db vdd = 5.0 vd c + 100 mvrms psr r power supply rejection receive f = 300 hz ? 3.4 khz f = 3.4 khz ? 20 khz 40 25 db db pcm code is positive one lsb, vdd = 5.0 vdc + 100 mvrms sos spurious out - of - band signals at v out relative to input pcm code applied: 4600 hz ? 20 khz 20 khz ? 50 khz - 40 - 30 db db 0 dbm0, 300 hz ? 3400 hz input parameter description min typ max units test conditions xt x-r transmit to receive crosstalk -85 -78 db 300 hz ? 3400 hz, 0 dbm0 signal into vin of interfering channel. idle pcm code into channel under test. xt r-x receive to transmit crosstalk -85 -80 db 300 hz ? 3400 hz, 0 dbm0 pcm code into interfering channel. vin = 0 vrms for channel under test. xt x-x transmit to transmit crosstalk -85 -78 db 300 hz ? 3400 hz, 0 dbm0 signal into vin of interfering channel. vin = 0 vrms for channel under test. xt r-r receive to receive crosstalk -85 -80 db 300 hz ? 3400 hz, 0 dbm0 pcm code into interfering channel. idle pcm code into channel under test. parameter description min typ max units test conditions std x transmit signal to total distortion ratio a - law : input level = 0 dbm0 input level = - 30 dbm0 input level = - 40 dbm0 input level = - 45 dbm0 m - law : input level = 0 dbm0 input level = - 30 dbm 0 input level = - 40 dbm0 input level = - 45 dbm0 36 36 30 24 36 36 31 27 db db db db db db db db itu - t o.132 sine wave method,psophometric weighted for a - law, c message weighted for m - law. std r receive signal to total distortion ratio a - law : inp ut level = 0 dbm0 input level = - 30 dbm0 input level = - 40 dbm0 input level = - 45 dbm0 m - law : input level = 0 dbm0 input level = - 30 dbm0 input level = - 40 dbm0 input level = - 45 dbm0 36 36 30 24 36 36 31 27 db db db db db db db db itu - t o.1 32 sine wave method,psophometric weighted for a - law;sine wave method,c message weighted for m - law; sfd x single frequency distortion, transmit - 42 dbm0 200 hz - 3400 hz, 0 dbm0 input, output any other single frequency 3400 hz sfd r single frequency di stortion, receive - 42 dbm0 200 hz - 3400 hz, 0 dbm0 input, output any other single frequency 3400 hz imd intermodulation distortion - 42 dbm0 transmit or receive,two frequencies in the range (300 hz - 3400 hz) at - 6 dbm0
29 industrial temperature range idt821054 quad programmable pcm codec with mpi interface timing characteristics reset and clock figure 7. reset and clock timing t6 t6 bclk t4 t5 t5 t8 t8 mclk t7 t7 t3 t3 cclk t1 t2 t2 parameter description min typ max units test conditions t0 reset pulse width 50 m s t1 cclk period 122 100k ns t2 cclk pulse width 48 ns t3 cclk rise and fall time 25 ns t4 bclk period 122 ns t5 bclk pulse width 48 ns t6 bclk rise and fall time 15 ns t7 mclk pulse width 48 ns t8 mclk rise and fall time 15 ns reset t0 intrachannel crosstalk note: crosstalk into the transmit channels (vin) can be significantly affected by parasitic capacitive coupling v out outputs. pcb layouts should be arranged to minimize these parasitics. parameter description min typ max units test conditions xt x-r transmit to receive crosstalk -80 -70 db 300 hz ? 3400 hz, 0 dbm0 signal into vin. idle pcm code into dr. xt r-x receive to transmit crosstalk -80 -70 db 300 hz ? 3400 hz, 0 dbm0 pcm code into dr. vin = 0 vrms.
30 industrial temperature range idt821054 quad programmable pcm codec with mpi interface microprocessor interface figure 8. mpi input timin g figure 9. mpi output timing t11 t15 t16 t14 t17 cclk cs ci slic output t13 t11 t21 t22 t14 cclk cs co t13 t24 t23 parameter description min typ max units test conditions t11 cs setup time 15 70 ns t13 cs pulse width 8n*t1 (n>=2) ns t14 cs off time 250 ns t15 input data setup time 30 ns t16 input data hold time 30 ns t17 slic output latch valid 1000 ns t21 output data turn on delay 50 ns t22 output data hold time 0 ns t23 output data turn off delay 50 ns t24 output data valid 0 50 ns
31 industrial temperature range idt821054 quad programmable pcm codec with mpi interface figure 11. typical frame sync timing (2 mhz operation) note*: these timing diagram only apply to the situation when data clock in on falling edges and clock out on rising edges. figure 10. transmit and receive timing * pcm interface parameter description min typ max units test conditions t51 data enable delay time 5 70 ns t52 data delay time from bclk 5 70 ns t53 data float delay time 5 70 ns t54 frame sync setup time 25 t4 - 50 ns t55 frame sync hold time 50 ns t56 t sx1 or tsx2 enable delay time 5 80 ns t57 tsx1 or tsx2 disable delay time 5 80 ns t61 receive data setup time 25 ns t62 receive data hold time 5 ns 1 2 3 4 5 6 7 8 1 bit 1 bit 2 bit 3 bit 4 bit 5 bit 6 bit 7 bit 8 bit 1 bit 2 bit 3 bit 4 bit 5 bit 6 bit 7 bit 8 bclk fs dx1/ dx2 dr1/ dr2 t55 t54 time slot t53 t52 t51 t61 t62 tsx1 / tsx2 t56 t57 27 28 29 30 31 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 x0 x1 x2 x3 r0 r1 r2 r3 time slot fs dx dr tsx1 / tsx2
32 industrial temperature range idt821054 quad programmable pcm codec with mpi interface appendix: idt821054 coe-ram address mapping act ram acr ram gtx ram grx ram act ram acr ram gtx ram grx ram acr ram gtx ram grx ram imf ram ecf ram tone ram gis ram act ram grx ram frr ram gtx ram frx ram 0 7 000 001 010 011 100 8 15 16 23 24 31 32 39 channel0 channel1 channel2 channel3 word# b[2:0] of a coe-ram command word # address function word # address function 39 100 ,111 grx ram 19 010 ,011 38 100 ,110 18 010 ,010 37 100 ,101 17 010 ,001 36 100 ,100 16 010 ,000 gis ram 35 100 ,011 15 001 ,111 34 100 ,010 14 001 ,110 33 100 ,001 13 001 ,101 32 100 ,000 frr ram 12 001 ,100 31 011 ,111 gtx ram 11 001 ,011 30 011 ,110 10 001 ,010 29 011 ,101 9 001 ,001 28 011 ,100 8 001 ,000 ecf ram 27 011 ,011 7 000 ,111 26 011 ,010 6 000 ,110 25 011 ,001 5 000 ,101 24 011 ,000 frx ram 4 000 ,100 23 010 ,111 amplitude coefficient of tone generator 1 3 000 ,011 22 010 ,110 frequency coefficient of tone generator 1 2 000 ,010 21 010 ,101 amplitude coefficient of tone generator 0 1 000 ,001 20 010 ,100 frequency coefficient of tone generator 0 0 000 ,000 imf ram generally, 6 bits of address are needed to locate each word of the 40 coe-ram words. the 40 words of coe-ram are divided into 5 blocks with 8 words per block in idt821054, so only 3 bits of address are needed to locate each of the block. when the address of a coe-ram block (b[2:0]) is specified in a coe-ram command, all 8 words of this block will be addressed automatically, with the highest order word first ( idt821054 will count down from '111' to '000' so that it accesses the 8 words successively). refer to page 14 and 15 for more information. the address assignment for the 40 words coe-ram is shown in the following table. the number in the "address" column is the actual address of the coe-ram word, as the idt821054 handles the lower 3 bits automatically, only the higher 3 bits (in bold style) are needed for a coe-ram command. it should be noted that, when addressing the grx ram, the frr ram will be addressed at the same time. table 7 - coe-ram address allocation
corporate headquarters for sales: for tech support: 2975 stender way 800-345-7015 or 408-727-6116 408-330-1753 santa clara, ca 95054 fax: 408-492-8674 email: telecomhelp@idt.com ww.idt.com* pkg: www.idt.com/docs/psc4035.pdf *to search for sales office near you, please click the sales button found on our home page or dial the 800# above and press 2. the idt logo is a registered trademark of integrated device technology, inc. 33 data sheet document history 12/21/2001 pgs. 8, 22, 26, 27 01/03/2002 pg. 24 01/23/2002 pgs. 1, 2, 5, 7, 11, 15, 21 02/19/2002 pg. 27


▲Up To Search▲   

 
Price & Availability of IDT821054-XQ

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X